Multiple Coordinated Views to Support Aspect Mining Using Program Slicing (S)
نویسندگان
چکیده
Aspect Mining and Refactoring to Aspects aim to identify crosscutting concerns and encapsulate them in aspects, respectively. Aspect Mining remains as non-automatic process, i.e., the user needs to analyze and understand the results generated by techniques/tools, and confirm crosscutting concerns to refactor them to aspects. In this paper we propose a visual approach that deals with results generated by two aspect mining techniques proposed in the literature. By coordinating visual mappings, different levels of detail to explore software artifacts support aspect mining facilitating their interpretation for further refactoring to aspects. The proposed visual approach was implemented (SoftV iz4AspectMining tool) and in this paper are presented the obtained visualizations, how to interpret them and lessons learned.
منابع مشابه
Application of Program Slicing for Aspect Mining and Extraction – A Discussion
Aspect Orientation removed the code scattering and tangling drawback of Object Orientation by encapsulating the cross cutting concerns into their own modules called Aspects. It is gaining popularity these days as lot of languages, frameworks, programming and modeling tools already support aspects and developers have started to embrace these. But there exists lot of legacy object oriented code t...
متن کاملExtending Program Slicing in Aspect-Oriented Programming with Inter-Type Declarations
Program slicing can be very useful for understanding and debugging aspect-oriented programs. Program slicing is a common technique, but it is not trivial to use in aspectoriented programming. Current implementations of slicing tools lack support for features of popular aspect-oriented languages. This paper proposes a detailed algorithm for the construction of an aspect-oriented system dependenc...
متن کاملData-flow and Control-flow Analysis of AspectJ Software for Program Slicing
We propose an approach for program slicing of AspectJ software, based on a novel data-flow and control-flow program representation. The representation is built at the source-code level and, unlike previous work, captures the semantic intricacies of various pointcut designators, multiple advices per joint point, dynamic advices, exceptions, and general flow of data to, from, and between advices....
متن کاملUsing Program Slicing Technique to Reduce the Cost of Software Testing
Systems of computers and their application in the lives of modern human beings are vastly expanding. In any kind of computer application, failure in computer systems can lead to a range of financial and mortal losses. Indeed, the major origin of software failure can be located in designing or implementing software. With regard to these statistics, 30% of the software projects have been prospero...
متن کاملProgram Slicing Tool for Effective Software Evolution Using Aspect-Oriented Technique
One of the issues in software evolution is debugging. Debugging large and complex software systems evolved requires a lot of effort since it is very difficult to localize and identify faults. Therefore, reducing the effort of debugging process is an important step towards efficient software evolution. Program slicing, especially dynamic slicing, has been proposed to efficiently localize faults ...
متن کامل